
import { Injectable } from '@angular/core';
import { FormControl } from '@angular/forms';
import { Form, NgFormControl, NgChildForm, NgChildFormArray, NgValidateForm } from '@farris/devkit';
import { DateConverter, MultiLangConverter } from '@farris/kendo-binding';

@Injectable()
@NgValidateForm({
    formGroupName: '客户信息',
    enableValidate: true
})

@Injectable()
export class DetailFormComponentViewmodelForm extends Form {
    @NgFormControl({
        id: 'name_87f67ac6_ik3r',
        name: "{{name_87f67ac6_ik3r}}",
        binding: 'name',
        updateOn: 'blur',
        defaultI18nValue: '姓名',
        validRules: [
            {
                type: 'required',
                constraints: [true],
            },
            {
                type: 'matches',
                constraints: [''],
            }
        ]
    })
    name: FormControl;

    @NgFormControl({
        id: 'code_c4599f4c_1nmt',
        name: "{{code_c4599f4c_1nmt}}",
        binding: 'code',
        updateOn: 'blur',
        defaultI18nValue: '编号',
        validRules: [
            {
                type: 'matches',
                constraints: [''],
            }
        ]
    })
    code: FormControl;

    @NgFormControl({
        id: 'telephone_088cff8d_bhla',
        name: "{{telephone_088cff8d_bhla}}",
        binding: 'telephone',
        updateOn: 'blur',
        defaultI18nValue: '联系电话',
        validRules: [
            {
                type: 'required',
                constraints: [true],
            },
            {
                type: 'matches',
                constraints: [''],
            }
        ]
    })
    telephone: FormControl;

    @NgFormControl({
        id: 'mailbox_8757aff9_wr02',
        name: "{{mailbox_8757aff9_wr02}}",
        binding: 'mailbox',
        updateOn: 'blur',
        defaultI18nValue: '邮箱',
        validRules: [
            {
                type: 'required',
                constraints: [true],
            },
            {
                type: 'matches',
                constraints: [''],
            }
        ]
    })
    mailbox: FormControl;

    @NgFormControl({
        id: 'remark_ff4f04fd_nm3x',
        name: "{{remark_ff4f04fd_nm3x}}",
        binding: 'remark',
        updateOn: 'blur',
        defaultI18nValue: '备注',
    })
    remark: FormControl;

    @NgFormControl({
        id: 'state_99c34a5a_zvrl',
        name: "{{state_99c34a5a_zvrl}}",
        binding: 'state',
        updateOn: 'blur',
        defaultI18nValue: '状态',
        validRules: [
            {
                type: 'matches',
                constraints: [''],
            }
        ]
    })
    state: FormControl;

    @NgFormControl({
        id: 'organization_b4469c8c_48f8',
        name: "{{organization_b4469c8c_48f8}}",
        binding: 'organization',
        updateOn: 'blur',
        defaultI18nValue: '公司',
        validRules: [
            {
                type: 'required',
                constraints: [true],
            },
            {
                type: 'matches',
                constraints: [''],
            }
        ]
    })
    organization: FormControl;

    @NgFormControl({
        id: 'gender_996bfb3d_10mc',
        name: "{{gender_996bfb3d_10mc}}",
        binding: 'gender',
        updateOn: 'blur',
        defaultI18nValue: '性别',
        validRules: [
            {
                type: 'required',
                constraints: [true],
            },
            {
                type: 'matches',
                constraints: [''],
            }
        ]
    })
    gender: FormControl;

    @NgFormControl({
        id: 'countryOrArea_c39014bb_m6rp',
        name: "{{countryOrArea_c39014bb_m6rp}}",
        binding: 'countryOrArea',
        updateOn: 'blur',
        defaultI18nValue: '所属国家或地区',
        validRules: [
            {
                type: 'matches',
                constraints: [''],
            }
        ]
    })
    countryOrArea: FormControl;

    @NgFormControl({
        id: 'location_f4cb70d7_1rgh',
        name: "{{location_f4cb70d7_1rgh}}",
        binding: 'location',
        updateOn: 'blur',
        defaultI18nValue: '常驻地',
        validRules: [
            {
                type: 'matches',
                constraints: [''],
            }
        ]
    })
    location: FormControl;

}